Image obtained from: Sharp, J., Ryan, S. (2011) Global Agile Team Configuration. Journal of Strategic Innovation and Sustainability vol. 7 (1)
Short Iterations
A key feature of agile, are the short iterations
built into the structure of all of the different agile
methodologies. Rather
than releasing a large completed project at the end and over
whelming the customer, under the different agile methodologies,
development teams incrementally release working features to the
customer. This allows
the customer to provide useful feedback and allow the development
team to adjust accordingly. With
regards to customer feedback, the agile manifesto values closely
working with the customer the entire process, and highly values
communication.
Communication and Close Customer involvement
The Agile manifesto values face-to-face communication when communicating among a team. Many of the agile methodologies have expanded valuing face-to-face communication when conveying information to and from a customer. According to Agilemodeling.com, Alistair Cockburn, one of the writers of the Agile Manifesto, argued that based on the Media Richness Theory, that face-to-face conversations have the highest communication effectiveness and highest communication richness, when compared to other communication methods.[i] The main reason why face-to-face communication is so effective is because non-verbal communication is easier to exchange between parties.
Close customer involvement is most important
during planning and testing phases of an iteration.
It allows the customer to
convey what they require and verify that the requirement has been
met. As mentioned
earlier, providing client with working pieces is important to the
verification and feedback process.
With the short iterations and close continuous customer
communication, the cost of changing requirements is drastically
reduced.[ii]
Requirement Changes
Under the traditional methodology,
requirements are gathered up front, which becomes very expensive to
change during the late stages of the project because most of the
completed work performed in earlier stages was based off the
unchanged requirements gathered in the beginning stages.[iii]
[iv]
The short iterations of agile reduces or mitigates the cost of
allowing late changes to the requirements because requirements are
continually revisited after only completing a small portions of the
project. Furthermore,
the continuous communication from the customer allows the developer
to find out about changes earlier which reduces change cost even
more. Being able to
change the requirements late in the development life cycle allows
for a product that is better adapted to the evolving business
environment.
[v]
Team Dynamics
Teams are important to successfully
implementing agile within a corporation.
Agile encourages utilizing self-managing teams that are
co-located.[vi]
The need for quick
adaptability requires empowered individuals / teams to be able to
make important decisions without having to go through rigid vertical
organizational structures.
[vii]
Furthermore, as mentioned
earlier, face-to face communication is important, that is why it is
important to have a co-located team.
In today’s global organizations, co-located teams are
difficult to attain.
[i] Ambysoft
Inc. (2013). Communication on Agile Software Projects.
Retrieved from
http://www.agilemodeling.com/essays/communication.htm
[ii] Ambysoft
Inc. (2013). Examining the Agile Cost of Change Curve.
Retrieved from
http://www.agilemodeling.com/essays/costOfChange.htm
[iii] Helmy,
W., Kamel, A., Hegazy, O. (2012)
Requirements Engineering Methodology in Agile
Environment. IJCSI International Journal of Computer Science Issues, Vol. 9,
Issue 5, No 3
[iv] Ambysoft
Inc. (2013). Examining the Agile Cost of Change Curve.
Retrieved from
http://www.agilemodeling.com/essays/costOfChange.htm
[v] Ibid
[vi]
Dingsoeyr, Torgeir, et al. "A Decade of Agile Methodologies:
Towards Explaining Agile Software Development." Journal
of Systems and Software 85.6 (2012): 1213-21.
[vii] Devi, V.
(2013) Traditional and Agile Methods: An Interpretation.
Retrieved from
http://www.scrumalliance.org/community/articles/2013/january/traditional-and-agile-methods-an-interpretation